Data binding – kolekce
Data binding dovoluje načítat kolekce objektů do elementů. WPF také obsahuje elementy určené pro zobrazování kolekce objektů (ListBox, ListView nebo TreeView). Všechny tyto elementy mají společný atribut ItemSource. Tento atribut slouží pro načtení objektů z kolekce. Vytvoření Data bindingu pro kolekce je podobné jako v předchozí kapitole. Tedy za předpokladu, že třída bude vytvořena v XAML.
Obrázek 5 Diagram třídy Skola pro data binding [zdroj: vlastní]
Na Obrázku 5 je ukázka diagramu třídy Skola. Tato třída má vlastnost Studenti typu ObservableCollection<Student>. Třída ObservableCollection je generickou kolekcí pro různé typy objektů. Její nejdůležitější vlastností je že dokáže upozornit na změnu stavu kolekce a prvků. Nebo také, pokud se změní stav vloženého prvku . To je důležité pro správné fungování data bindingu. Přidání nebo odebrání prvku z kolekce ovlivní zobrazená data.
Vytvoření objektu třídy Škola
<local:Skola x:Key="skola">
<local:Skola.Studenti>
<local:Student ID="0" Jmeno="Michal" Prijmeni="Novotný" NetId="st22222"/>
<local:Student ID="1" Jmeno="Petr" Prijmeni="Svoboda" NetId="st22001"/>
</local:Skola.Studenti>
</local:Skola>
Zobrazení studentů pomocí elementu ListBox
<ListBox ItemsSource="{Binding Source={StaticResource skola},Path=Studenti}"/>